home *** CD-ROM | disk | FTP | other *** search
/ Deutsche Edition 1 / Deutsche Edition 1.iso / amok / 081-090 / amok89 / outil / outil.dok < prev    next >
Text File  |  1993-11-04  |  54KB  |  1,449 lines

  1. Anleitung zu OUtil Release 2.3
  2.  
  3. Copyright (C) 1993 Albert Weinert
  4.  
  5.  
  6. OUtil Release 2.3 Dokumentation
  7. ********************************
  8.  
  9.  
  10. Copyright und andere rechtliche Dinge
  11. **************************************
  12.  
  13. Copyright (C) 1992,1993 Albert Weinert
  14.  
  15. Diese Dokumentation darf kopiert und weitergegeben werden solange die
  16. Copyright-Notiz und diese Erlaubnis unverändert auf allen Kopien enthalten
  17. ist.
  18.  
  19. Es wird keine Garantie gegeben, daß die Programme, die in dieser
  20. Dokumentation beschrieben werden, 100%ig zuverlässig sind. Sie benutzen
  21. diese Programme auf eigene Gefahr. Die Autoren können auf *keinen* Fall für
  22. irgendwelche Schäden verantwortlich gemacht werden, die durch die Anwendung
  23. dieser Programme entstehen.
  24.  
  25. Das Paket ist *freely distributable*, aber das Copyright liegt weiterhin bei
  26. Albert Weinert. Dies bedeutet, daß es von jedem kopiert werden darf
  27. solange er nicht mehr als eine angemessene Kopiergebühr dafür verlangt.
  28. Diese Gebühr *darf nicht* höher sein als US $5 oder 5 DM.
  29.  
  30. *Dieses Limit gilt auch für deutsche Public-Domain Händler!!*
  31.  
  32. Dieses Paket darf in Public-Domain Sammlungen aufgenommen werden (CD ROM
  33. Versionen dieser Sammlungen eingeschlossen). Die Distributionsdatei darf in
  34. Mailboxsystemen oder auf FTP Servern abgelegt werden. Wenn Sie dieses Paket
  35. weitergeben wollen, dann *müssen* Sie die originale Distributionsdatei
  36. `OUtil_V23.lha' benutzen.
  37.  
  38. Die Programme und der Quelltext (oder Teile davon) dürfen *auf keinen Fall*
  39. auf irgendeiner Maschine benutzt werden, die für die Forschung, Entwicklung,
  40. Konstruktion, Tests oder Produktion von Waffen oder anderen militärischen
  41. Gütern benutzt wird. Dies gilt natürlich auch für alle Maschinen, die für
  42. das Training von Personen in *irgendeiner* der obengenannten Tätigkeiten
  43. benutzt werden.
  44.  
  45.  
  46. Adresse des Autors
  47. *******************
  48.  
  49. Der Autor kann unter folgenden Adressen erreicht werden:
  50.  
  51. Postadresse:
  52.              Albert Weinert
  53.              Krähenweg 21
  54.              50829 Köln (bis July 1993, W-5000 Köln 30)
  55.              GERMANY
  56.  
  57. Electronic Mail:
  58.           Im Subnet (Internet):
  59.              aweinert@darkness.gun.de
  60.           oder im Z-Netz
  61.              a.weinert@darkness.zer
  62.           oder von Fido aus
  63.              Albert Weinert of 2:241/4033
  64.  
  65.      Die Fido--Adresse wurde noch nie getestet, wenn kein Reply kommt bitte
  66.      andere Adresse benutzen.
  67.  
  68.  
  69. Einleitung
  70. ***********
  71.  
  72. Das OUtil ist ein Programm das geschrieben worden ist, um den Umgang mit dem
  73. Amiga Oberon Compiler von der A+L AG zu erleichtern. So das dieses Programm
  74. auch nur für Programmierer interessant ist die  diesen Compiler benutzen,
  75. falls sie es nicht tut dann empfehlen sie dieses Programm doch einer/m
  76. Freund/in von ihnen so das er in den Genuß dieses Programms kommt.
  77.  
  78. Die Entwicklungsumgebung von Amiga Oberon ist eigentlich in Ordnung, denn man
  79. kann den Quelltext Kompilieren, das Programm Linken und Starten, dies geht
  80. sogar alles vom Editor aus. Es ist sogar möglich die Compileroptionen von
  81. Editor aus einzustellen.
  82.  
  83. Aber wenn man längere Zeit damit arbeitet werden die Mängel des System
  84. sichtbar:
  85.  
  86.    * Die Compileroptionen können nicht abgespeichert werden, so das sie
  87.      jedesmal wenn der Editor aufgerufen wird eingestellt werden müssen. Es
  88.      gibt zwar den Weg daß über einen Alias zu machen und dem Editor die
  89.      Option beim Aufruf mitzugeben. Aber dieses ist dieses ist wieder ein
  90.      Allgemeingültiger Aufruf, den man dann wieder an die verschiedenen
  91.      Projekte, an denen man Arbeitet, anpassen müsste.
  92.  
  93.    * es können vom Editor aus keine Objektdateien aus anderen
  94.      Programmiersprachen zu seinem Programm hinzugelinkt werden. So das wenn
  95.      man zum Beispiel einen Assemblerteil in sein Programm einbauen will,
  96.      jedesmal für das Linken in eine Shell wechseln muss.
  97.  
  98.    * um ein Programm zulinken muss sich der Hauptquelltext immer im Speicher
  99.      befinden auch wenn er im Moment nicht gebraucht wird, weil er evtl.
  100.      schon fertig ist.
  101.  
  102.    * man kann ODebug nicht aus dem Editor heraus starten.
  103.  
  104.    * man kann OMake nicht mit der Option ALL starten.
  105.  
  106.    * man kann nicht mal schnell eine Kopie von seinen Quelltext oder Programm
  107.      machen, so das man auf eine evtl. Laufähige Version zurückgreifen kann
  108.      wenn das Programm mal nicht mehr das macht was es machen sollte.
  109.  
  110.    * MakeFiles sind für das AmigaOberon packet ein Fremdwort
  111.  
  112. Diese Mängel werden von OUtil zu gut es geht beseitigt und es gibt noch
  113. einige Verbesserungen um die Arbeit noch weiter zu vereinfachen.
  114.  
  115.    * einstellen von Optionen für den Compiler, Editor und Debugger.
  116.  
  117.    * starten von Oberon, OLink, OMake, ODebug, ModToDef und des Programms
  118.      selber.
  119.  
  120.    * eine Kopie vom Quelltext und des ausführbaren Programms erstellen.
  121.  
  122.    * starten des Programm mit einer Parameterzeile die übergeben werden kann.
  123.  
  124.    * verwalten von beliebig vielen Quelltexten
  125.  
  126.    * verwalten von beliebig vielen Linke Parametern
  127.  
  128.    * verwalten von beliebig vielen Parameterzeilen für den Programmstart
  129.  
  130.    * verwalten von beliebig vielen Compileroptionen für die bedingte
  131.      Compilierung.
  132.  
  133.    * laden eines Quelltextes direkt in den Editor, vom OUtil aus.
  134.  
  135.    * alle Einstellungen werden in einer Prefs-Datei gespeichert so das man
  136.      später die Einstellungen nicht nochmal vollziehen muss.
  137.  
  138.    * starten eines Editors beim Start von OUtil wobei die Quelltexte an denen
  139.      man gerade arbeitet direkt mit eingeladen werden.
  140.  
  141.    * starten des Residentmanagers beim start von OUtil, wenn dieser noch
  142.      nicht im Speicher sein sollte.
  143.  
  144.    * ARexx Unterstützung
  145.  
  146.    * Unterstützung von beliebigen Editoren mit ein ARexx Schnittstelle.
  147.  
  148.    * Möglichkeit der Makefile Ausführung
  149.  
  150.  
  151. Systemanforderungen
  152. ********************
  153.  
  154. Hardware
  155. ========
  156.  
  157. An die Hardware werden so gut wie keine Anforderungen gestellt, OUtil
  158. sollte auf jedem Amiga laufen.
  159.  
  160. Software
  161. ========
  162.  
  163. Bedingung zur Lauffähigkeit von OUtil ist mindestens AmigaOS 2.04, d.h. 
  164. mindestens Kickstart 37.175 und Workbench 37.67.
  165.  
  166. Um die Funktionen von OUtil alle nutzen zu können muss das AmigaOberon-Packet
  167. 2.1 oder besser 3.0 vorhanden sein.
  168.  
  169.  
  170. Installation
  171. *************
  172.  
  173. Die Installation von OUtil ist sehr einfach, einfach das Programm `OUtil'
  174. inkl. Piktogramm in das Verzeichnis `Oberon:' und das Standard-Piktogram
  175. `OUtilPrefs.info' *muss* in das Verzeichnis `Oberon:Icons' kopiert werden.
  176. Und schon ist OUtil installiert.
  177.  
  178.  
  179. Bedienung
  180. **********
  181.  
  182. Die Bedienung von OUtil ist auch sehr einfach, wenn man sich einmal daran
  183. gewöhnt hat.
  184.  
  185. Die Modulnamen beginnen immer mit "TXT/" und Enden mit ".mod" wenn dies nicht
  186. der Fall ist werden sie von OUtil vor der Benutzung des Namens (z.B: beim
  187. kompilieren, laden usw) erzeugt.
  188.  
  189. Die Stringgadgets die Quelltexte, Linkerparameter, Programmparamter und
  190. Compileroptionen beinhalten sind mit einem EditHook versehen, so das man wenn
  191. das StringGadget aktiv ist mit dem Cursortasten die Einträge in der Liste
  192. rauf und runter gehen kann um sich die Einträge auszuwählen. Auch ist
  193. Rechts neben diesen StringGadgets ein Rechteckiger Button, wenn man diesen
  194. anklickt erscheint eine Liste mit den Einträgen die dort vorhanden sind.
  195. Dort kann man sich mit der Maus einen Eintrag auswählen. Diese Liste kann
  196. man falls man den Button ausversehen Angeklickt hat durch nochmaliges
  197. Anklicken wieder schliessen.
  198.  
  199. Die Gadgets haben in ihrem Namen einen unterstrichenen Buchstaben, wenn man
  200. diesen auf der Tastatur (ohne jeglichen Qualifier) drückt, hat dies dieselbe
  201. Funktion wie wenn man das Gadget mit der Maus anwählen würde.
  202.  
  203. In den Settings Fenstern gibt es immer das "Project" Menu dort sind zwei
  204. Menüpunkte.
  205.  
  206. Der erste Menüpunkt "Use" bedeutet das die aktuellen eingestellten Settings
  207. für den weiteren Programmbetrieb verwendet werden, und das das Settings
  208. Fenster geschlossen wird.
  209.  
  210. Der zweite Menüpunkt "Cancel" bedeutet das die aktuellen eingestellten
  211. Settings nicht für den weiteren Programmbetrieb übernommen werden, auch
  212. hier wird das Settings Fenster geschlossen.
  213.  
  214. Außerdem gibt es zwei Gadgets am unterem Windowrand ("Use" und "Cancel") die
  215. in der Funktion mit dem gleichnamigen Menupunkten übereinstimmen.
  216.  
  217. Das Verzeichnis von dem aus OUtil gestartet worden ist muss ein "TXT"
  218. Verzeichnis haben, denn dort müssen bzw. werden die Quelltexte stehen.
  219.  
  220. Für den Aufbau des Verzeichnis empfehle ich folgende Direktories.
  221.  
  222.      TXT (Dir)
  223.      SYM (Dir)
  224.      OBJ (Dir)
  225.      REF (Dir)
  226.      DOC (Dir)
  227.  
  228. Desweiteren sollte OUtil wenn es von einer Shell gestartet wird mit `run
  229. >NIL: OUtil' gestartet werden (oder halt mit RunBack).
  230.  
  231. Das File "OUtilPrefs.info" muss in das Verzeichnis "Oberon:Icons" gelegt
  232. werden. Sonst kann dem Konfigurationsfile kein Icon gegeben werden.
  233.  
  234. Bei CheckBoxGadgets wird immer die Funktion beschrieben, die bewirkt wird
  235. wenn das Gadget abgehakt ist.
  236.  
  237.  
  238. Wie starte ich OUtil eigentlich
  239. ********************************
  240.  
  241. Shell Start
  242. ===========
  243.  
  244. Der Paramterstring der OUtil übergeben wird hat folgende template:
  245.  
  246.      TEMPLATE : PREFS/K,SCREEN=PUBSCREEN/K
  247.  
  248. Wenn man OUtil über die Shell startet, sieht der Aufruf ungefähr so aus.
  249.  
  250.      run >NIL: OUtil PREFS=OUtil_V2.prefs PUBSCREEN="Oberon Screen"
  251.  
  252. Als PrefsFile kann man angeben welches PrefsFiles von OUtil geladen werden
  253. so. Wird dies nicht gefunden so wird versucht in dem aktuellen Verzeichnis
  254. die Datei "OUtil.prefs" zuladen (dieses wird auch geladen wenn man kein
  255. PrefsFile angibt). Wenn dieses PrefsFile dann auch nicht gefunden wird,
  256. versucht OUtil noch das PrefsFile "ENV:OUtil/OUtil.prefs" zu laden und wenn
  257. dies alles nicht vorhanden ist werden interne Voreinstellungen benutzt.
  258.  
  259. Als ScreenName kann man angeben auf welchen Public Screen sich OUtil öffnen
  260. soll. Hier ist voreingestellt "Oberon Screen" man kann zum Beispiel hier auch
  261. "CygnusEdScreen1" eintragen. Dann öffnet sich OUtil auf dem CygnusEdScreen.
  262. Voraussetzung ist natürlich das man den CygnusEdScreen als Public deklariert
  263. hat. Wenn der Screen sich immer auf der Workbench öffnen soll kann man
  264. "Workbench" angeben.
  265.  
  266. Workbench Start
  267. ===============
  268.  
  269. Wenn das PrefsFile mit einem Icon versehen ist, so lässt sich OUtil auch von
  270. der Workbench starten. Einfach ein Doppelklick auf des PrefsFile und dann
  271. wird OUtil gestartet. (Die Voraussetzung ist natürlich das als DefaultTool
  272. OBERON:OUtil eingetragen ist). Dieses Icon kann denn ToolType PUBSCREEN =
  273. ScreenName enthalten so das auch hier den Screen angeben kann auf den sich
  274. OUtil öffnen soll.
  275.  
  276. Praktisch ist es wenn man das Icon auf die Workbench auslagert, denn so kann
  277. direkt nach hochfahren des System das Icon Anklicken und so sehr schnell an
  278. seinem Projekt arbeiten.
  279.  
  280.  
  281. Die Fenster von OUtil
  282. **********************
  283.  
  284. Beim OUtil gibt es verschiedene Fenster, in diesem Fenster können Parameter
  285. eingestellt werden oder Funktionen ausgeführt werden. Ingesamt gibt es
  286. folgende Fenster:
  287.  
  288.  
  289. Das MainWindow Fenster
  290. ***********************
  291.  
  292.  
  293. Die Menüs des MainWindow Fensters
  294. **********************************
  295.  
  296. Das Project Menü
  297. ================
  298.  
  299. `Save Settings'
  300.      Speichert die Konfiguration unter dem bei Starten angegebenen Namen ab,
  301.      wenn kein Namen angegeben worden ist wird als Name "OUtil.prefs"
  302.      benutzt. Es sei denn ist die Konfiguration aus dem ENV: Verzeichnis
  303.      gelesen worden oder die internen Parameter benutzt worden. Wenn dies der
  304.      Fall ist, wird verfahren wie mit "Save Settings As..."
  305.  
  306. `Save Settings As...'
  307.      Speichert die Konfiguration ab aber vorher wird nach einen Namen dafür
  308.      gefragt unter dem gespeichert werden soll, voreingestellt ist
  309.      "OUtil.prefs" oder der Name den man beim Start von OUtil angegeben hat.
  310.  
  311. `Save As Default'
  312.      Speichert die Konfiguration in zwei Files ab, als
  313.      "ENV:OUtil/OUtil.prefs" und als "ENVARC:OUtil/OUtil.prefs". Es wird die
  314.      komplette Konfiguration gespeichert bis auf die Module, die
  315.      OLinkParameter und die Kommandozeilen für das Programm.
  316.  
  317. `About...'
  318.      Gibt einen Requester aus, indem die Versionsnummer und der Copyright
  319.      Vermerk von OUtil angegeben sind.
  320.  
  321. `Exec ARexx...'
  322.      Öffnet einen Filerequester mit dem Pfad "REXX:" und dem Pattern
  323.      "#?.outil" so das man sich ein RexxSkript auswählen kann welches
  324.      ausgeführt werden soll. Dies Skript wird Asyncron gestartet
  325.  
  326. `Stop ARexx'
  327.      Stop ALLE ARexx Skript die Momentan am laufen sind. Dies wird ereicht in
  328.      dem der Shell Befehl "HI" gestartet wird.
  329.  
  330. `Quit'
  331.      Beendet das Programm und entfernt es aus dem Speicher. Es ist möglich
  332.      das wenn man ARexx Kommandos sendet, das diese noch nicht wieder
  333.      bestätigt worden sind. Falls das so ist erscheint ein Requester und man
  334.      kann das Programm nicht beenden. In diesem Falle einfach den Requester
  335.      betätigen, dann ein bisschen warten und dann nochmal quitten. Diesen
  336.      Requester dürfte man eigentlich nie zu sehen bekommen. ARexx kommandos
  337.      werden von OUtil gesendet wenn man von OUtil aus den Editor veranlasst
  338.      einen Quelltext zu laden, und wenn man Skript mit "Exec ARexx..."
  339.      getstartet hat. Man kann evtl. versuchen alle Skripts mit "Stop ARexx"
  340.      zu unterbrechen so und danach nochmal zu quitten.
  341.  
  342. Das Settings Menü
  343. =================
  344.  
  345. `Editor...'
  346.      Öffnet ein Fenster auf dem man Parameter für den Editor einstellen
  347.      kann.
  348.  
  349. `Compiler...'
  350.      Öffnet ein Fenster auf dem man die Compileroptionen einstellen kann.
  351.  
  352. `Debugger...'
  353.      Öffnet ein Fenster auf dem man Parameter für den Debugger einstellen
  354.      kann.
  355.  
  356. `General...'
  357.      Öffnet ein Fenster auf dem man allgemeingültige Parameter einstellen
  358.      kann.
  359.  
  360.      Die einzelnen Fenster und deren Funktionen werden weiter unten noch
  361.      beschrieben.
  362.  
  363. Das Special Menü
  364. ================
  365.  
  366. `Backup Module...'
  367.      Macht ein Backup von dem aktuellen Quelltext. d.h. OUtil kopiert den
  368.      Quelltext und hängt ihm ein ".bak" an wobei die Endung ".mod" dann
  369.      weggelassen wird.
  370.  
  371. `Backup Executable...'
  372.      Macht ein Backup vom dem aktuellen Programm, d.h.: OUtil kopiert das
  373.      Programm und hängt dem Programm ein ".bak" an.
  374.  
  375. `Module List'
  376.      Hier gibt es zwei Untermenüpunkte für die Liste der Quelltexte die
  377.      neben dem "Compile" Gadget in einem StringGadget angezeigt wird.
  378.  
  379.         * Add an Entry
  380.  
  381.           Fügt einen leeren Eintrag in der List hinter dem aktuellen Eintrag
  382.           an.
  383.  
  384.         * Remove Entry
  385.  
  386.           Entfernt den aktuellen Eintrag aus der Liste, wenn der letzte
  387.           Eintrag aus der Liste entfernt ist wird "Unused Entry" angezeigt.
  388.  
  389. `Linker List'
  390.      Hier gibt es zwei Untermenüpunkte für die Liste der OLink Parameter
  391.      die neben dem "Link" Gadget in einem StringGadget angezeigt wird.
  392.  
  393.         * Add an Entry
  394.  
  395.           Fügt einen leeren Eintrag in der List hinter dem aktuellen Eintrag
  396.           an.
  397.  
  398.         * Remove Entry
  399.  
  400.           Entfernt den aktuellen Eintrag aus der Liste, wenn der letzte
  401.           Eintrag aus der Liste entfernt ist wird "Unused Entry" angezeigt.
  402.  
  403. `Parameter List'
  404.      Hier gibt es zwei Untermenüpunkte für die Liste der Programmparamter
  405.      die neben dem "Start" Gadget in einem StringGadget angezeigt wird.
  406.  
  407.         * Add an Entry
  408.  
  409.           Fügt einen leeren Eintrag in der List hinter dem aktuellen Eintrag
  410.           an.
  411.  
  412.         * Remove Entry
  413.  
  414.           Entfernt den aktuellen Eintrag aus der Liste, wenn der letzte
  415.           Eintrag aus der Liste entfernt ist wird "Unused Entry" angezeigt.
  416.  
  417. `Make All...'
  418.      Startet OMake mit der ALL Option so das alle Module die Importiert
  419.      werden, neu kompiliert werden.
  420.  
  421. `Load LinkFile'
  422.      Lädt die Link-Datei für das aktuelle Programm So, das man sie edieren
  423.      kann.
  424.  
  425. `Load MakeFile'
  426.      Lädt die Make-Datei für das aktuelle Programm So, das man sie edieren
  427.      kann.
  428.  
  429.  
  430. Die Gadgets in dem MainWindow Fenster
  431. **************************************
  432.  
  433. Die StringGadgets
  434. =================
  435.  
  436. Das obere StringGadget beinhaltet die Module die mit OUtil bearbeitet werden
  437. können. Dabei ist der angezeigte Quelltext das aktuelle Module. Wenn mit dem
  438. Quelltext Funktionen ausgeführt werden wird falls nicht vorhanden, ein "TXT/"
  439. vorangestellt und ein ".mod" angehängt. Allerdings wird wenn ein "/" im
  440. Namen enthalten ist kein "TXT/ vorangesetzt und wenn ein "." oder "-" in
  441. Namen enthalten ist kein ".mod" angehängt. Dieses StringGadget kann mit
  442. CTRL-c aktiviert werden. Wenn man der Eintrag mit einem `;' beginnt, dann
  443. wird diese Modul nicht beim Programmstart geladen. Bei allen anderen
  444. Funktionen wirkt sich dieses nicht aus, es wird dann einfach ingnoriert.
  445.  
  446. Das mittlere StringGadget beinhaltet die Parameter die OLink übergeben
  447. werden. Der angezeigte Eintrag ist der aktuelle Parameter. Der Eintrag muss
  448. genauso aussehen wie als wenn man OLink von der Shell aufrufen würde (wobei
  449. OLink nicht mit angebenen wurd darf), nur die Optionen brauchen nicht angeben
  450. werden. Ich denke ein Beispiel schafft Klarheit.
  451.  
  452.      Rechnung OBJ OBJ/Password.o
  453.  
  454. Hier würde das Programm "Rechnung" gelinkt wobei die Objektdatei
  455. "Password.o" da noch zusätzlich hinzugelinkt würde. Der OBJ Parameter ist
  456. optional es MUSS nur der Programmname drinstehen. Die Optionen für SmallCode
  457. oder SmallData werden automatisch OLink übergeben. Dieses StringGadget kann
  458. mit Ctrl-k aktiviert werden. Auch hier gibt es eine Spezial Funktion, wenn
  459. ein Eintrag mit einem `@' beginnt, dann wird beim Link und Make nicht direkt
  460. OLink bzw. OMake gestartet sondern ein LinkFile bzw. ein Makefile gestartet,
  461. der Name der Datein ergibt sich aus dem den Programmnamen an denen ein ".lkf"
  462. für Linkfiles und ein ".mkf" für MakeFiles anghängt wird. So ein MakeFile
  463. *muss* ein "%s" enthalten, denn an dessen stelle wird der OLink oder OMake
  464. Aufruf gesetzt, ein Beispiel für so ein MakeFile ist folgendes
  465.  
  466.      ECHO Dies ist eine MakeDatei für das OUTil
  467.      FileDate txt/Arb2TeXInfo.cd txt/Arb2TeXInfoLocale.mod
  468.      IF NOT WARN
  469.        Cd2Oberon txt/Arb2TeXInfo.cd txt/Arb2TeXInfoLocale.mod
  470.      ENDIF
  471.      %s
  472.      ECHO Dies ist das Ende
  473.  
  474. Hier würde getestet ob die die Datei `TXT/Arb2TeXInfo.cd' neuer als die Date
  475. `TXT/Arb2TeXInfoLocale.mod' wäre, und wenn ja dann würde mit `Cd2Oberon'
  476. die Datei `TXT/Arb2TeXInfoLocale.mod' auf den aktuellen Stand gebracht
  477. werden, anschließen wurde OLink oder OMake gestartet werden.
  478.  
  479. Wenn nur ein LinkFile vorhanden ist dann wird auch beim Make das LinkFile
  480. ausgeführt.
  481.  
  482. Das untere StringGadget beinhaltet die Paramter die dem Programm beim Start
  483. übergeben werden. Diese parameter werden komplett so an den Programmnamen
  484. gehangen wie sie eingeben sind. Dieses StringGadget kann mit Ctrl-s aktiviert
  485. werden.
  486.  
  487. Die StringGadgets zeigen immer den aktuellen Eintrag aus einer Liste die wie
  488. in "Allgemeines zum Arbeiten mit OUtil" beschrieben ist gewechselt werden
  489. können.
  490.  
  491. Die Buttongadgets
  492. =================
  493.  
  494. `Compile'
  495.      Startet den Compiler mit dem aktuellen Modul
  496.  
  497. `Link'
  498.      Startet den Linker mit den aktuellen Paramter für OLink
  499.  
  500. `Start'
  501.      Startet das Programm und übergibt um die aktuellen Paramter
  502.  
  503. `Make'
  504.      Startet OMake, wobei sich auf das bezieht was für OLink abgeben ist.
  505.  
  506. `Debug'
  507.      Startet den Debugger und anschliessend das Programm, wenn der Debugger
  508.      schon im Speicher vorhanden ist wird nur das Programm gestartet.
  509.  
  510. `Load'
  511.      Läßt den Editor das Aktuelle Modul laden
  512.  
  513. `ModToDef'
  514.      Startet 'ModToDef' um aus dem aktuellen Modul eine Definitionsdatei zu
  515.      erstellen.
  516.  
  517.  
  518. Was es sonst noch über das MainWindow Fenster zu sagen gibt
  519. ************************************************************
  520.  
  521. Es ist möglich wenn das Window aktiv ist mit den Pfeiltasten, die Liste der
  522. Module und der OLinkparamter rauf und runter zu gehen.
  523.  
  524. Mit den Cursortasten rauf/runter wechselt man die Einträge in der
  525. Quelltextlist und mit den Cursortasten rechts/links wechselt man die
  526. Einträge om der OLinkparamterliste.
  527.  
  528. Mit der Tab-Taste ist es möglich das aktive Stringgadget zu wechseln und
  529. zwar mit "TAB" das nächste Stringgadget und mit "Shift-TAB" das vorherige
  530. Stringgadget.
  531.  
  532. Mit der Leertaste wird das vordereste Window was über die Mitte des Screens
  533. lugt aktiviert. Dies kann man dazu benutzen um das Quelltext Window von OEd
  534. zu aktivieren so das man wieder am Quelltext arbeiten kann.
  535.  
  536.  
  537. Das CompilerSettings Fenster
  538. *****************************
  539.  
  540.  
  541. Die Menüs des CompilerSettings Fenster
  542. ***************************************
  543.  
  544. Das Projekt Menu
  545. ================
  546.  
  547. Das Menü entspricht der Beschreibung die in "Allgemeines zum Arbeiten mit
  548. OUtil" gegeben wurde.
  549.  
  550. Das Special Menu
  551. ================
  552.  
  553. `Compiler Options'
  554.      Hier gibt es zwei Untermenüpunkte für die Liste, der Compiler Options
  555.      für die bedingte Kompilierung, die im gleichnamigen StringGadget
  556.      angezeigt wird.
  557.  
  558.         * Add an Entry
  559.  
  560.           Fügt einen leeren Eintrag in der List hinter dem aktuellen Eintrag
  561.           an.
  562.  
  563.         * Remove Entry
  564.  
  565.           Entfernt den aktuellen Eintrag aus der Liste, wenn der letzte
  566.           Eintrag aus der Liste entfernt ist wird "Unused Entry" angezeigt.
  567.  
  568.  
  569. Die Gadgets des CompilerSettings Fenster
  570. *****************************************
  571.  
  572. Die CheckBoxgadgets
  573. ===================
  574.  
  575. `StachkChk'
  576. `OvflChk'
  577. `RangeChk'
  578. `ReturnChk'
  579. `NilChk'
  580. `TypeChk'
  581. `OddChk'
  582.      Diese Gadgets sind für die Compiler-Optionen die den Überprüfungscode
  583.      einstellen, schauen sie bitte für deren Bedeutung in ihrem Amiga-Oberon
  584.      Handbuch nach.
  585.  
  586. `SmallCode'
  587. `SmallData'
  588. `ClearVars'
  589. `Debug'
  590. `AutoReqPars'
  591. `Garbage Collector'
  592. `Language Extensions'
  593. `MergeHunks'
  594. `68881'
  595.      Diese Gadgets beeinflußen die Code-Erzeugung vom Amiga Oberon Compiler,
  596.      schauen sie bitte für deren Bedeutung in ihrem Amiga-Oberon Handbuch
  597.      nach.
  598.  
  599. `AskSymbol'
  600.      Diese Option entspricht dem Menüpunkt "New Symbol" vom OEd, schauen sie
  601.      bitte für ihre Bedeutung in ihrem Amiga-Oberon Handbuch nach.
  602.  
  603. Die Cyclegadgets
  604. ================
  605.  
  606. `CPU'
  607.      Dies ist das einzige CycleGadget, mit diesem kann man den Prozessor
  608.      einstellen für den der Compiler das ausführbare Programm erzeugt.
  609.  
  610. Die Stringgadgets
  611. =================
  612.  
  613. Auch hier gibt es nur ein Gadget von, und zwar das Compiler Options Gadget
  614. hier stehen die Optionen für die bedingte Kompilierung diese werden dem
  615. Compiler übergeben.
  616.  
  617. Für dieses Stringadget gilt auch das was im "Allgemeines zum Arbeiten mit
  618. OUtil" über Stringgadgets gesagt wurde.
  619.  
  620.  
  621. Was es sonst noch über das CompilerSettings Fenster zu sagen gibt
  622. ******************************************************************
  623.  
  624. Mit dem Pfeiltasten rauf/runter kann man den aktuellen Eintrag im
  625. Compileroptions StringGadget ändern ohne das das Gadget aktiv sein muss.
  626.  
  627.  
  628. Das CompilerSettings Fenster
  629. *****************************
  630.  
  631.  
  632. Die Menüs des DebuggerSettings Fenster
  633. ***************************************
  634.  
  635. Die Menus entsprechen der Beschreibung die in "Allgemeines zum Arbeiten mit
  636. OUtil" gegeben wurde.
  637.  
  638.  
  639. Die Gadgets des DebuggerSettings Fenster
  640. *****************************************
  641.  
  642. Die CheckBoxgadgets
  643. ===================
  644.  
  645. `Screen'
  646.      Gibt an ob beim Start von ODebug ein eigener Screen geöffnet werden
  647.      soll.
  648.  
  649. `Interlace'
  650.      Gibt an ob beim Start von ODebug der evtl. zu öffnende Screen sich im
  651.      Interlace öffnen soll. Wobei dieses nur Funktioniert wenn man keine
  652.      ScreenMode innerhalb vom OEd eingestellt hat.
  653.  
  654. `Popup Windows'
  655. `Sort Records'
  656. `Close Pointer'
  657. `Open Sources'
  658.      Die Optionen entsprechen den Menümpunkten von ODebug und deren
  659.      Bedeutung kann man im Handbuch nachschlagen.
  660.  
  661. Die Integergadgets
  662. ==================
  663.  
  664. `XPos'
  665. `YPos'
  666. `Width'
  667. `Height'
  668.      Diese Gadgets geben die Position und Ausmaße der Fenster an die von
  669.      ODebug geöffnet werden.
  670.  
  671. `Depth'
  672.      Die Anzahl der Bitplanes mit der ODebug seinen Screen öffnet.
  673.  
  674.  
  675. Das EditorSettings Fenster
  676. ***************************
  677.  
  678.  
  679. Die Menüs des EditorSettings Fenster
  680. *************************************
  681.  
  682. Die Menus entsprechen der Beschreibung die in "Allgemeines zum Arbeiten mit
  683. OUtil" gegeben wurde.
  684.  
  685.  
  686. Die Gadgets des EditorSettings Fenster
  687. ***************************************
  688.  
  689. Die CheckBoxgadgets
  690. ===================
  691.  
  692. `Screen'
  693.      Gibt an ob beim Start von OEd ein eigener Screen geöffnet werden soll.
  694.  
  695. `Interlace'
  696.      Gibt an ob beim Start von OEd der evtl. zu öffnende Screen sich im
  697.      Interlace öffnen soll. Dieses Flag für von OEd ignoriert wenn man
  698.      seinen ScreenModus vom OEd aus eingestellt hat.
  699.  
  700. `AutoUpperCase'
  701.      Schaltet im OEd die automatische Großschreibung von Standardbezeichnern
  702.      ein.
  703.  
  704. Wenn im Stringgadget "Editor Name" nicht "OEd" vorkommt werden die Flags die
  705. mit den CheckBoxGadgets angezeigt werden nicht an den Editor weitergegeben.
  706.  
  707. Die Integergadgets
  708. ==================
  709.  
  710. `XPos'
  711. `YPos'
  712. `Widht'
  713. `Height'
  714.      Diese Gadgets geben die Position und Ausmaße der Fenster an die vom OEd
  715.      geöffnet werden.
  716.  
  717. `Depth'
  718.      Die Anzahl der Bitplanes mit der OEd seinen Screen öffnet.
  719.  
  720. `MaxUndo'
  721.      Die Maximale anzahle von Undo/Redo Schritten die OEd speichert und die
  722.      er dann auch zurücknehmen kann.
  723.  
  724. Wenn im Stringgadget "Editor Name" nicht "OEd" vorkommt werden die Werte die
  725. in den Intergadgets stehen nicht an den Editor weitergegeben.
  726.  
  727. Die Stringgadgets
  728. =================
  729.  
  730. `Editor Name'
  731.      Hier steht der Aufruf des Editors wie er gestartet wird, als
  732.      Voreinstellung ist `Run >NIL: OBERON:OEd' eingetragen. An diesen namen
  733.      werden dann die evtl. zu ladenen Module angehängt. Man kann auch dem
  734.      Editor auch Optionen übergeben. Wenn man z.B: den CygnusEd als seinen
  735.      Lieblingseditor auserkoren hat kann man hier `CEd' oder `Ed -sticky'
  736.      eintragen.
  737.  
  738. `Load Skript'
  739.      Hier steht ein kleines ARexx Skript was seinen Editor veranlasst das
  740.      aktuelle Modul zu laden. Dieses Skript muss in Anführungszeichen
  741.      stehen. Hier ist für den OEd voreingestellt:
  742.  
  743.           "Address 'OEd'; 'newwindow', 'load %s'"
  744.  
  745.      An der stelle wo das %s im String steht wird vor dem Ausführen der Name
  746.      des Moduls eingesetzt. Ein Beispiel Skript für den CEd könnte so
  747.      aussehen:
  748.  
  749.           "Address 'rexx_ced'; 'open new'; 'open %s'"
  750.  
  751.  
  752. Das General Settings Fenster
  753. *****************************
  754.  
  755.  
  756. Die Menüs des GeneralSettings Fenster
  757. **************************************
  758.  
  759. Die Menus entsprechen der Beschreibung die in "Allgemeines zum Arbeiten mit
  760. OUtil" gegeben wurde.
  761.  
  762.  
  763. Die Gadgets des GeneralSettings Fenster
  764. ****************************************
  765.  
  766. Die CheckBoxGadgets
  767. ===================
  768.  
  769. `Icons'
  770.      Gibt an ob OEd, Oberon, OLink und OUtil beim Speichern Ihrer Dateien
  771.      Icons erstellen sollen.
  772.  
  773. `Start Editor'
  774.      Gibt an das der Editor den man in dem Editor Settings Window eingestellt
  775.      hat beim Start von OUtil automatich gestartet wird und das die Module
  776.      die man nicht markiert hat, das diese dann geladen werden.
  777.  
  778. `Res. Manager'
  779.      Gibt an ob der Residentmanager gestartet werden soll, wenn dieser schon
  780.      aktiviert im Speicher rumfliegt, wird er nicht nochmal gestartet.
  781.  
  782. `Oberon 3.00'
  783.      Diese Gadget sollte man aktivieren wenn man das Amiga Oberon Packet 3.0
  784.      besitzt, damit diese richtig aufgerufen wird. Wenn sie die Version 2.1
  785.      des Packetes besitzen, dann sollten sie hier den Haken nicht setzten.
  786.  
  787. Die Integergadgets
  788. ==================
  789.  
  790. `Wait Time'
  791.      Gibt die Zeit an wie lange OUtil warten soll bis es sein Window
  792.      öffnent. Die ist dafür gedacht um damit zu warten bis der Editor
  793.      geladen ist un der dann seinen Screen aufgemacht hat, damit OUtil sein
  794.      Fenster auf dem Editor Screen öffnen kann (wenn es ein PublicScreen ist
  795.      und man den Screennamen in dem Editor Settings Window eingstellt hat).
  796.      Die Zeit wird in Ticks angeben (dies kommt daher weil die Dos.Delay()
  797.      Funktion benutzt wird. Im Europäischen Raum ist es normalerweise so das
  798.      50 Ticks eine Sekunde sind.
  799.  
  800. Die Stringgadgets
  801. =================
  802.  
  803. `PopKey'
  804.      Enthält den PopKey mitdem man das OUtil II MainWindow nach vorne holen
  805.      kann. Dies kann von überall geschehen. Wenn die Tastenkombination
  806.      gedrückt wurde, wird das Window aktiviert und der Screen worauf sich das
  807.      Window befindet nach vorne geholt. Das Format dieses Stings entspricht
  808.      der der commodities.library, wie die aktuellen Tastenbezeichnung sind
  809.      kann man am besten aus dem Handbuch zur Workbench entnehmen.
  810.  
  811.  
  812. Der ARexx Port und was man damit macht
  813. ***************************************
  814.  
  815. Der ARexx Port umfasst zur Zeit 49 Befehle, und wird noch ausgebaut. Der
  816. Portname von OUtil ist "OUTIL", aber wenn jetzt OUtil mehrmals gestartet
  817. wird, so das OUtil mehrmals parallel läuft, so ändert sich auf der ARexx
  818. Portname. Und zwar wie folgt:
  819.  
  820. Das erste OUtil bekommt den Namen "OUTIL", das zweite "OUTIL.2" und das
  821. dritte "OUTIL.3" usw. Wenn jetzt allerdings z.b. OUtil Nummer 2 geschlossen
  822. wird. So bekommt dann das nächste OUtil was gestartet wird die nummer des
  823. geschlossen OUTil's im Beispiel also "OUTIL.2".
  824.  
  825. In der Beschreibung wird der Befehl angeben und das was dahintersteht ist die
  826. Template für die Parameter des Befehl,der Aufbau der Templates entspricht
  827. dem der Shell Programme der Workbench und kann im Shell Handbuch nachgelesen
  828. werden. Ein "," als Template bedeutet das keine Argumente ausgewertet werden.
  829.  
  830.      BEFEHL  : MainWindow ,
  831.      
  832.      FUNKTION: öffnet das MainWindow
  833.      
  834.      ERGEBNIS: Nichts
  835.      
  836.      
  837.      BEFEHL  : EditorSettings ,
  838.      
  839.      FUNKTION: Öffnet das Editor Settings Window
  840.      
  841.      ERGEBNIS: Nichts
  842.      
  843.      
  844.      BEFEHL  : CompilerSettings ,
  845.      
  846.      FUNKTION: Öffnet das Compiler Settings Window
  847.      
  848.      ERGEBNIS: Nichts
  849.      
  850.      
  851.      BEFEHL  : DebuggerSettings ,
  852.      
  853.      FUNKTION: Öffnet das Debugger Settings Window
  854.      
  855.      ERGEBNIS: Nichts
  856.      
  857.      
  858.      BEFEHL  : GeneralSettings ,
  859.      
  860.      FUNKTION: Öffnet das General Settings Window
  861.      
  862.      ERGEBNIS: Nichts
  863.      
  864.      
  865.      BEFEHL  : CloseMainWindow ,
  866.      
  867.      FUNKTION: Schliesst das MainWindow, wobei OUtil noch im
  868.                Speicherbleibt und so auch mit OpenMainWindow wieder
  869.                geöffnet werden kann.
  870.      
  871.      ERGEBNIS: Nichts
  872.      
  873.      
  874.      BEFEHL  : CloseEditor ,
  875.      
  876.      FUNKTION: Schliessen des Editor Settings Window
  877.      
  878.      ERGEBNIS: Nichts
  879.      
  880.      
  881.      BEFEHL  : CloseCompiler ,
  882.      
  883.      FUNKTION: Schliessen des Compiler Settings Window
  884.      
  885.      ERGEBNIS: Nichts
  886.      
  887.      
  888.      BEFEHL  : CloseDebugger ,
  889.      
  890.      FUNKTION: Schliessen des Debugger Settings Window
  891.      
  892.      ERGEBNIS: Nichts
  893.      
  894.      
  895.      BEFEHL  : CloseGeneral ,
  896.      
  897.      FUNKTION: Schliessen des General Settings Window
  898.      
  899.      ERGEBNIS: Nichts
  900.      
  901.      
  902.      BEFEHL  : Quit ,
  903.      
  904.      FUNKTION: Beenden von OUtil, schliesst alle Fenster und
  905.                entfernt es aus dem Speicher.
  906.      
  907.      
  908.      BEFEHL  : Compile MODULE
  909.      
  910.      FUNKTION: Startet den Compiler, für weitere Beschreibung siehe
  911.                "MainWindow/ButtonGadgets/Compile"
  912.      
  913.      EINGABE : MODULE = Quelltext der Kompiliert werden soll, wenn
  914.                kein Quelltext angeben wird, wird der aktive
  915.                Quelltext genommen der im StringGagdet steht. Auch
  916.                hier wird ein TXT/ bzw. ein .mod angefügt falls es
  917.                nicht vorhanden ist.
  918.      
  919.      ERGEBNIS: Nichts
  920.      
  921.      
  922.      BEFEHL  : Link ,
  923.      
  924.      FUNKTION: Startet den Linker, für weitere Beschreibung siehe
  925.                "MainWindow/ButtonGadgets/Link"
  926.      
  927.      ERGEBNIS: Nichts
  928.      
  929.      
  930.      BEFEHL  : Start ,
  931.      
  932.      FUNKTION: Startet das Programm, für weitere Beschreibung siehe
  933.                "MainWindow/ButtonGadgets/Start"
  934.      
  935.      ERGEBNIS: Nichts
  936.      
  937.      
  938.      BEFEHL  : Debug ,
  939.      
  940.      FUNKTION: Startet den Debugger, für weitere Beschreibung siehe
  941.                "MainWindow/ButtonGadgets/Debug"
  942.      
  943.      ERGEBNIS: Nichts
  944.      
  945.      
  946.      BEFEHL  : Load MODULE
  947.      
  948.      FUNKTION: Lädt den Quelltext, für weitere Beschreibung siehe
  949.                "MainWindow/ButtonGadgets/Load"
  950.      
  951.      EINGABE : MODULE = Quelltext der geladen werden soll, wenn
  952.                kein Quelltext angeben wird, wird der aktive
  953.                Quelltext genommen der im StringGagdet steht. Auch
  954.                hier wird ein TXT/ bzw. ein .mod angefügt falls es
  955.                nicht vorhanden ist.
  956.      
  957.      ERGEBNIS: Nichts
  958.      
  959.      
  960.      BEFEHL  : ModToDef /N
  961.      
  962.      FUNKTION: Erstellt eine Definitionsdatei, für weitere
  963.                Beschreibung siehe
  964.                "MainWindow/ButtonGadgets/ModToDef"
  965.      
  966.      ERGEBNIS: Nichts
  967.      
  968.      
  969.      BEFEHL  : Make ALL/S
  970.      
  971.      FUNKTION: Startet das Make Utility, für weitere Beschreibungen
  972.                siehe "MainWindow/ButtonGagdets/Make".
  973.      
  974.      EINGABE : Startet das Make Utility mit der Option ALL, für
  975.                weitere Beschreibungen siehe
  976.                "MainWindow/Menu/MakeAll...".
  977.      
  978.      ERGEBNIS: Nichts
  979.      
  980.      
  981.      BEFEHL  : RefreshEditorWindow ,
  982.      
  983.      FUNKTION: Das Editor Settingswindow wird Refreshed d.h. wenn
  984.                man Optionen geändert hat und diese im Window
  985.                angezeigt werden sollen falls es geöffnet war muss
  986.                dieser Befehl aufgerufen werden.
  987.      
  988.      ERGEBNIS: Nichts
  989.      
  990.      
  991.      BEFEHL  : RefreshCompilerWindow ,
  992.      
  993.      FUNKTION: Das Compiler Settingswindow wird Refreshed d.h. wenn
  994.                man Optionen geändert hat und diese im Window
  995.                angezeigt werden sollen falls es geöffnet war muss
  996.                dieser Befehl aufgerufen werden.
  997.      
  998.      ERGEBNIS: Nichts
  999.      
  1000.      
  1001.      BEFEHL  : RefreshDebuggerWindow ,
  1002.      
  1003.      FUNKTION: Das Debbuger Settingswindow wird Refreshed d.h. wenn
  1004.                man Optionen geändert hat und diese im Window
  1005.                angezeigt werden sollen falls es geöffnet war muss
  1006.                dieser Befehl aufgerufen werden.
  1007.      
  1008.      ERGEBNIS: Nichts
  1009.      
  1010.      
  1011.      BEFEHL  : RefreshGeneralWindow ,
  1012.      
  1013.      FUNKTION: Das General Settingswindow wird Refreshed d.h. wenn
  1014.                man Optionen geändert hat und diese im Window
  1015.                angezeigt werden sollen falls es geöffnet war muss
  1016.                dieser Befehl aufgerufen werden.
  1017.      
  1018.      ERGEBNIS: Nichts
  1019.      
  1020.      
  1021.      BEFEHLE:  StackChk, OvflChk, RangeChk, CaseChk, ReturnChk,
  1022.                NilChk, TypeChk, OddChk, AutoRegPars, ClearVars,
  1023.                AskSymbol, SmallCode, SmallData, AutoUpperCase,
  1024.                PopupWindows, SortRecords, ClosePointers,
  1025.                OpenSources, Icons, StartEditor, ResManager
  1026.      
  1027.      TEMPLATE: ON/S,OFF/S,T=TOGGLE/S
  1028.      
  1029.      FUNKTION: Mit diesen Befehlen kann man die Optionen in OUtil
  1030.                setzen die Befehle entsprechen den Namen der
  1031.                Gadgets.
  1032.      
  1033.      EINGABE : ON     = Schaltet die Option ein
  1034.                OFF    = Schaltet die Option aus
  1035.                TOGGLE = Wechselt die Option von aus nach ein bzw.
  1036.                von ein nach aus
  1037.      
  1038.      ERGEBNIS: ON oder OFF jenachdem welchen Zustand die Option vor
  1039.                dem Befehl hatte.
  1040.      
  1041.      
  1042.      BEFEHL  : EditorScreen ON/S,OFF/S,T=TOGGLE/S
  1043.      
  1044.      FUNKTION: Einstellen der Option Screen im Editor Settings
  1045.                Window
  1046.      
  1047.      EINGABE : ON     = Schaltet die Option ein
  1048.                OFF    = Schaltet die Option aus
  1049.                TOGGLE = Wechselt die Option von aus nach ein bzw.
  1050.                von ein nach aus
  1051.      
  1052.      ERGEBNIS: ON oder OFF jenachdem welchen Zustand die Option vor
  1053.                dem Befehl hatte.
  1054.      
  1055.      
  1056.      BEFEHL  : EditorInterlace ON/S,OFF/S,T=TOGGLE/S
  1057.      
  1058.      FUNKTION: Einstellen der Option Interlace im Editor Settings
  1059.                Window
  1060.      
  1061.      EINGABE : ON     = Schaltet die Option ein
  1062.                OFF    = Schaltet die Option aus
  1063.                TOGGLE = Wechselt die Option von aus nach ein bzw.
  1064.                von ein nach aus
  1065.      
  1066.      ERGEBNIS: ON oder OFF jenachdem welchen Zustand die Option vor
  1067.                dem Befehl hatte.
  1068.      
  1069.      
  1070.      BEFEHL  : DebuggerScreen ON/S,OFF/S,T=TOGGLE/S
  1071.      
  1072.      FUNKTION: Einstellen der Option Screen im Debugger Settings
  1073.                Window
  1074.      
  1075.      EINGABE : ON     = Schaltet die Option ein
  1076.                OFF    = Schaltet die Option aus
  1077.                TOGGLE = Wechselt die Option von aus nach ein bzw.
  1078.                von ein nach aus
  1079.      
  1080.      ERGEBNIS: ON oder OFF jenachdem welches Zustand die Option vor
  1081.                dem Befehl hatte.
  1082.      
  1083.      
  1084.      BEFEHL  : DebuggerInterlace ON/S,OFF/S,T=TOGGLE/S
  1085.      
  1086.      FUNKTION: Einstellen der Option Interlace im Debugger Settings
  1087.                Window
  1088.      
  1089.      EINGABE : ON     = Schaltet die Option ein
  1090.                OFF    = Schaltet die Option aus
  1091.                TOGGLE = Wechselt die Option von aus nach ein bzw.
  1092.                von ein nach aus
  1093.      
  1094.      ERGEBNIS: ON oder OFF jenachdem welchen Zustand die Option vor
  1095.                dem Befehl hatte.
  1096.      
  1097.      
  1098.      BEFEHL  : DebugOption ON/S,OFF/S,T=TOGGLE/S
  1099.      
  1100.      FUNKTION: Einstellen der Option Debug im Compiler Settings
  1101.                Window. Ich muss leider den Namen ändern weil
  1102.                "Debug" schon für den Start des Debuggers verwendet
  1103.                wurde.
  1104.      
  1105.      EINGABE : ON     = Schaltet die Option ein
  1106.                OFF    = Schaltet die Option aus
  1107.                TOGGLE = Wechselt die Option von aus nach ein bzw.
  1108.                von ein nach aus
  1109.      
  1110.      ERGEBNIS: ON oder OFF jenachdem welchen Zustand die Option vor
  1111.                dem Befehl hatte.
  1112.      
  1113.      
  1114.      BEFEHL  : Processor 68000/S,68010/S,68020/S,68030/S,68881/S
  1115.      
  1116.      FUNKTION: Einstellen der Processor Version für die das
  1117.                Programm kompiliert werden soll.
  1118.      
  1119.      EINGABE : 68000 = für MC 68000
  1120.                68010 = für MC 68010
  1121.                68020 = für MC 68020
  1122.                68030 = für MC 68030
  1123.                68881 = für MC 68881
  1124.      
  1125.      ERGEBNIS: Nichts
  1126.  
  1127.  
  1128. Geschichte
  1129. ***********
  1130.  
  1131. Geschichte der OUtil Releases:
  1132.  
  1133.  
  1134.      ProgVersion  Interne Version    Autor  Datum
  1135.      ----------------------------------------------------------------------
  1136.      Ver: 2.2     IntRev: 37.306      [awn] 03-Aug-1992
  1137.         Tja, mit der Historyführung fange ich jetzt erst an, weil mir das
  1138.         vorher zuviel Arbeit war und ich jetzt das ganze über ARexx fast
  1139.         automatisiert habe (nur die Änderungen muss ich noch selbst tippen)
  1140.      
  1141.         Beim Processor Gadget im Compiler Settings Window ist es nun möglich
  1142.         auch mit gedrückter Shifttaste abwärts zu Cyclen.
  1143.         Das gesamte GadgetSystem wurd ein ganze Menge vereinfacht, dies ist
  1144.         für die Tastaturabfrage so das die Tasten jetzt automatisch rausgesucht
  1145.         werden.
  1146.      
  1147.      ----------------------------------------------------------------------
  1148.      Ver: 2.2     IntRev: 37.307      [awn] 03-Aug-1992
  1149.         Das Cycle Gadget Flackert jetzt nicht mehr wenn man mit der Shift-Taste
  1150.         runtercycled.
  1151.      
  1152.      ----------------------------------------------------------------------
  1153.      Ver: 2.2     IntRev: 37.308      [awn] 03-Aug-1992
  1154.         Den Programmcode ein bisschen überarbeitet so das das Programm um sage
  1155.         und schreibe 992 bytes kürzer ist ;-)
  1156.      
  1157.      ----------------------------------------------------------------------
  1158.      Ver: 2.2     IntRev: 37.309      [awn] 04-Aug-1992
  1159.         Wenn jetzt ein Window gegen unerlaubtes betätigen der Gadget geschützt
  1160.         wird (beim About Requester, beim File Requester und beim Starten vom
  1161.         Compiler, linker etc.), wird jetzt auch der WaitPointer der WB gesetzt.
  1162.      
  1163.      ----------------------------------------------------------------------
  1164.      Ver: 2.2     IntRev: 37.310      [awn] 04-Aug-1992
  1165.         Beim Aboutrequester wird jetzt auch der Name des ARexx Ports mit
  1166.         angeben (mal wieder was für das UISG)
  1167.      
  1168.      ----------------------------------------------------------------------
  1169.      Ver: 2.2     IntRev: 37.311      [awn] 05-Aug-1992
  1170.         Das verschliessen des Windows wurde geändert, es entspricht jetzt dem
  1171.         Beispiel aus dem RKM:Librares 3rd Edition
  1172.      
  1173.      ----------------------------------------------------------------------
  1174.      Ver: 2.2     IntRev: 37.312      [awn] 06-Aug-1992
  1175.         MenuPunkt "Exec ARexx" in Project Menu mit aufgenommen, jetzt ist
  1176.         es möglich auch ARexx Skripts von OUtil aus Starten zu lassen
  1177.         (wieder was fürs UISG).
  1178.      
  1179.      ----------------------------------------------------------------------
  1180.      Ver: 2.2     IntRev: 37.313      [awn] 12-Aug-1992
  1181.         Das einsetzen des Namens beim TextLaden wird nun über SPrintF gemacht,
  1182.      
  1183.      ----------------------------------------------------------------------
  1184.      Ver: 2.2     IntRev: 37.314      [awn] 12-Aug-1992
  1185.         Es wird jetzt auch ein Backup von Programm gemacht wenn man bei
  1186.         den OLink Paramtern noch Objekte mit angeben hat.
  1187.         Außerdem ist es jetzt möglich 230 Zeichen statt 50 in der Linker List
  1188.         und 200 statt 50 Zeichen in der ParamterList einzugeben.
  1189.      
  1190.      ----------------------------------------------------------------------
  1191.      Ver: 2.2     IntRev: 37.315      [awn] 14-Aug-1992
  1192.         Das Programm der Anleitung angepasst :) Im Projekt Menu wurde jetzt noch
  1193.         der Menupünkt StopRexx eingebaut. Wenn man diesen anwählt wird das
  1194.         Programm "HI" gestartet und alles ARexx Skripts die Laufen gestoppt.
  1195.      
  1196.         Diese Version wurde in FRAS gepostet.
  1197.      ----------------------------------------------------------------------
  1198.      Ver: 2.2a    IntRev: 37.316      [awn] 16-Aug-1992
  1199.         Wenn nun ein Window durch einen zu großen Font nicht mehr auf den Screen
  1200.         paßt wird nun auf Topaz 8 runtergeschaltet. Allerdings wirkt das nicht wenn
  1201.         der ScreenFont so groß ist das das Window trotz Topaz 8 größer wie der
  1202.         Screen ist. Aber das wird im normalen Einsatz hoffentlich nicht erreicht.
  1203.      
  1204.      ----------------------------------------------------------------------
  1205.      Ver: 2.2a    IntRev: 37.317      [awn] 20-Aug-1992
  1206.         BUG: Fehler in dem ListView welches die Einträge von einem StringGadget
  1207.         angezeigt hat. Wenn MungWall im hintergrund lief, hing sich der Rechner
  1208.         bei Schliessen des Windows auf....jetzt nicht mehr. Nun ist das Programm
  1209.         Enforcer und Mungwall getestet.
  1210.      
  1211.      ----------------------------------------------------------------------
  1212.      Ver: 2.2a    IntRev: 37.318      [awn] 20-Aug-1992
  1213.         BUG: Bei der Speicherung der SmallData und SmallCode Option im Speicher
  1214.         und somit auch im Config File wurde die beiden Optionen vertauscht..
  1215.         jetzt nicht mehr...
  1216.         Die Liste der Einträge der StringGadget öffnet sich jetzt so groß das
  1217.         6 Einträge drin Platzfinden.
  1218.      
  1219.      ----------------------------------------------------------------------
  1220.      Ver: 2.2b    IntRev: 37.319      [awn] 24-Oct-1992
  1221.         Durch einen Plattencrash ist mir irgendwann ein Modul abhandengekommen
  1222.         so das ich dieses neuschreiben musste. Gleichzeitig habe ich das
  1223.         Listenhändling auf ein AmigaOberon 3.0 kompatibles Modul umgestellt.
  1224.      
  1225.      ----------------------------------------------------------------------
  1226.      Ver: 2.2b    IntRev: 37.320      [awn] 09-Nov-1992
  1227.      
  1228.        OUtil stürzt beim Config laden nun nicht mehr ab (ist es durch das
  1229.        neue Listen Händling). Aber Irgendwie klappt es noch nicht so ganz mit
  1230.        der Auswahl aus dem ListView Gadget.
  1231.      
  1232.      ----------------------------------------------------------------------
  1233.      Ver: 2.2b    IntRev: 37.321      [awn] 15-Nov-1992
  1234.         Hehe, mein IntuiSupport Modul hatte gar keine Funktionen zum verwalten
  1235.         eines ListView Gadgets :). Ich hatte das vorher wohl anders gemacht.
  1236.         Das bearbeiteten der Liste klappt nun. Nur der CallBackHook in den
  1237.         StringGadgets wirft mir ein paar Enforcer hits raus (aber erst seit
  1238.         dem neuen Enforcer von Michael Sinz).
  1239.      
  1240.      ----------------------------------------------------------------------
  1241.      Ver: 2.2b    IntRev: 37.322      [awn] 15-Nov-1992
  1242.         Die EnforcerHits sind nun nicht mehr das, man sollte halt nicht den
  1243.         Inhalt eines Gadgets in einem Edit Hook mit Proceduren ändern die
  1244.         nicht dafür geeignet sind.
  1245.      
  1246.      ----------------------------------------------------------------------
  1247.      Ver: 2.2b    IntRev: 37.323      [awn] 20-Nov-1992
  1248.         Allgemein Interne Änderungen im Gadgethandling, nun ist es besser
  1249.         für die Zukunft gerüstest.
  1250.      
  1251.      ----------------------------------------------------------------------
  1252.      Ver: 2.2b    IntRev: 37.324      [awn] 21-Nov-1992
  1253.         Durch diverse Aufräumarbeiten im GadgetHandling ist das Programm nun
  1254.         etwas kürzer geworden.
  1255.      
  1256.      ----------------------------------------------------------------------
  1257.      Ver: 2.2b    IntRev: 37.325      [awn] 21-Nov-1992
  1258.         Das Window wurde jetzt für den Gadget aufbau in Segmente eingeteilt
  1259.         so das ein einfacheres Positionieren der Gadgets möglich ist.
  1260.      
  1261.      ----------------------------------------------------------------------
  1262.      Ver: 2.2b    IntRev: 37.326      [awn] 21-Nov-1992
  1263.         Das Gadget für das aufklappen der Liste, neben den StringGadgets
  1264.         hat jetzt ein Image, ich nenne es das ListImage. Naja, bei Windows 3.x
  1265.         ist so ein Image dafür üblich und mir viel kein besseres ein.
  1266.      
  1267.      ----------------------------------------------------------------------
  1268.      Ver: 2.2c    IntRev: 37.327      [awn] 27-Nov-1992
  1269.         Kleinere Fixes. Eigentlich unbedeutend, aber ich brauche diesen Eintrag
  1270.         um auf 2.2c zu erhöhen :)
  1271.      
  1272.      ----------------------------------------------------------------------
  1273.      Ver: 2.3     IntRev: 37.328      [awn] 30-Nov-1992
  1274.         Neue Option, wenn man im LinkerList StringGadget vor dem Programmnamen
  1275.         ein "@" setzt (ohne Leerstelle), dann wird nach erfolgreichem Linken
  1276.         bzw. Maken ein Batchdatei gestartet. Die Batchdatei hat folgenden namen
  1277.         xxxx.mkf, xxxx steht für den Programmnamen.
  1278.      
  1279.      ----------------------------------------------------------------------
  1280.      Ver: 2.3     IntRev: 37.329      [awn] 30-Nov-1992
  1281.         Es werden jetzt verschiedene Abfragen getätigt, so das man erst einen
  1282.         schritt nach dem anderen machen kann.
  1283.         Compile -> Link -> MakeFile -> Start, oder
  1284.         Make -> MakeFile -> Start.
  1285.         Wenn bei bei einer vorherigen Stufe ein Fehler auftrat, dann wird ein
  1286.         Requester geöffnet der Aufschluss gibt in welcher Stufe der Fehler
  1287.         auftrat und ob man trotzalledem die gewählte Funktion ausführen will.
  1288.      
  1289.      ----------------------------------------------------------------------
  1290.      Ver: 2.3     IntRev: 37.330      [awn] 09-Jan-1993
  1291.         An AmigaOberon 3.0 angepasst. Zwar wird noch nichts von Oberon-2
  1292.         benutzt. Aber die neuen CompilerOptionen werden unterstützt. So
  1293.         das man damit Arbeiten kann.
  1294.      
  1295.      ----------------------------------------------------------------------
  1296.      Ver: 2.3     IntRev: 37.331      [awn] 10-Jan-1993
  1297.         AmigaOberon 3.0 Switch eingebaut, dafür ist der OEd 2.13 Switch
  1298.         entfernt worden. So kann man OUtil auch wieder mit älteren
  1299.         Compilerversionen verwenden. Wenn jetzt im Modulnamen ein
  1300.         / vorkommt. So wird jetzt nicht mehr TXT/ davor gesetzt.
  1301.      
  1302.      ----------------------------------------------------------------------
  1303.      Ver: 2.3     IntRev: 37.332      [awn] 22-Jan-1993
  1304.         An AmigaOS 3.0 angepasst, so das dort die Menus jetzt im Release 3
  1305.         Look sind.
  1306.      
  1307.      ----------------------------------------------------------------------
  1308.      Ver: 2.3     IntRev: 37.333      [awn] 29-Jan-1993
  1309.         Die Images für die Gadgets neben den Stringgadgets, wurden bei mehr
  1310.         wie 2 Bitplanes falsch erstellt, dies ist jetzt behoben.
  1311.      
  1312.      ----------------------------------------------------------------------
  1313.      Ver: 2.3     IntRev: 37.334      [awn] 05-Feb-1993
  1314.         Zwei Bugfixes: OUtil stürtze ab wenn man es über die Shell startete
  1315.         und man parameter übergab. Auch wurde beim Start über die Shell
  1316.         nur der Editor gestartet wenn man OUtil gerunt hat. Diese beiden
  1317.         Fehler sind behoben
  1318.      ----------------------------------------------------------------------
  1319.      Ver: 2.3:   IntRev: 37.335      [awn] 22-Feb-1993
  1320.         Es wird jetzt ab Kickstart 3.0 der Zeichensatz des Bildschirmes
  1321.         als Zeichensatz für die Gadgets benutzt.
  1322.      
  1323.      ----------------------------------------------------------------------
  1324.      Revision: 37.336 Version: 2.3    [awn] 28-Mar-1993
  1325.      
  1326.        Es wurde eine Linker Option garnicht vom OUtil unterstützt. Jetzt
  1327.        kann man im Compiler Window noch angeben ob alle Hunks zu einem
  1328.        großen Hunk zusammenn gefügt. Dies wurd bei "SmallCode" zwar jetzt
  1329.        schon gemacht, aber nun kann man expliziet angeben. Das EditorWindow
  1330.        wurde mal wieder etwas anders layoutet, es braucht jetzt nicht
  1331.        mehr soviel Platz in der Breite.
  1332.      
  1333.      ----------------------------------------------------------------------
  1334.      Revision: 37.337 Version: 2.3    [awn] 28-Mar-1993
  1335.      
  1336.        Wenn der Editor der "OEd" ist, dann wird nach Beendigung des
  1337.        Compilierungsvorgangs die Fehlerdatei über ARexx neu eingelesen.
  1338.        Allerdings sollte zur Erkennung des OEds, auch OEd im Editoraufruf
  1339.        vorkommen.
  1340.      
  1341.      ----------------------------------------------------------------------
  1342.      Revision: 37.338 Version: 2.3    [awn] 28-Mar-1993
  1343.      
  1344.        Beim Start vom OUtil und wenn man das CompilerWindow mit "Use"
  1345.        verläßt, dann werden zwei neue Dateien angelegt. "Oberon.prefs"
  1346.        und "OLink.prefs", diese Dateien sind ein bis jetzt eine nicht
  1347.        Dokumentierte Funktion von "Oberon" und "OLink", diese beiden
  1348.        lesen diese Datei nämlich ein und setzten Ihre Optionen aus dieser
  1349.        Datei, die die aktuellen Stand der Optionen hat die auch in
  1350.        OUtil eingestellt sind. Diese Datei wird in dem Verzeichniss
  1351.        angelegt woraus OUtil gestartet wurde. Aber Achtung, die Optionen
  1352.        in den Dateien haben Absoluten Vorrang über den Shell Parameter
  1353.        bzw. ToolTypes.
  1354.      
  1355.      ----------------------------------------------------------------------
  1356.      Revision: 37.339 Version: 2.3    [awn] 08-Apr-1993
  1357.      
  1358.        Und V39 wird jetzt mit SetVBuf() die Pufferart verändet so, das das
  1359.        erstellen der Datein Oberon.prefs und OLinks.prefs unter V39
  1360.        schneller geschehen müßte.
  1361.      
  1362.      ----------------------------------------------------------------------
  1363.      Revision: 37.340 Version: 2.3    [awn] 08-Apr-1993
  1364.      
  1365.        Wenn jetzt kein Modul in der Modul-Liste eingetragen ist, aber dafür
  1366.        in der Link-Liste etwas steht dann wird das Compiliert was in der Link
  1367.        Liste steht.
  1368.      
  1369.      ----------------------------------------------------------------------
  1370.      Revision: 37.341 Version: 2.3    [awn] 16-May-1993
  1371.      
  1372.        Komplett neue MakeFile Variante, das MakeFile wird jetzt nicht
  1373.        mehr nach erfolgreichem Linken oder Maken ausgeführt sondern,
  1374.        anstatt. In dem MakeFile sollte ein %s vorkommen, und nur eins,
  1375.        dieses wird dann durch den entsprechenden Linker oder Make aufruf
  1376.        ersetzt.
  1377.      
  1378.      ----------------------------------------------------------------------
  1379.      Revision: 37.342 Version: 2.3    [awn] 16-May-1993
  1380.      
  1381.        Wenn in dem Module Namen ein "." oder ein "-" vorkommt, dann wird
  1382.        kein ".mod" mehr an den Namen gehangen.
  1383.      
  1384.      ----------------------------------------------------------------------
  1385.      Revision: 37.343 Version: 2.3    [awn] 17-May-1993
  1386.      
  1387.        Man kann jetzt zwei verschiedene Dateien für das Linken und
  1388.        das Maken erstellen. Die für das Linken endet mit `.lkf" und die
  1389.        für das maken mit `.mkf'. Wenn beim Make die #?.mkf Datei nicht
  1390.        da ist, dann wird die #?.lkf Datei genommen.
  1391.      
  1392.        Im Special MenÜ sind jetzt die Menu Punkte `Load LinkFile' und
  1393.        `Load MakeFile' hinzugekommen. Wenn man diese anwählt, dann wird
  1394.        das MakeFile zum gerade aktuellen Programm in den Editor geladen.
  1395.  
  1396.  
  1397. Was noch?
  1398. **********
  1399.  
  1400. Tja, hier steht jetzt also drin was ich noch vorhabe, also folgendes stelle
  1401. ich mir vor ist noch ganz nützlich oder praktisch wenn ich es einbauen
  1402. würde.
  1403.  
  1404.   1. Die Compileroptionen von OUtil an OEd über ARexx übermitteln.
  1405.  
  1406.   2. Den ARexx Befehlssatz ausbauen, bzw. komplett neu erstellen, dies wird
  1407.      dann wohl mit der ARexxBox geschehen.
  1408.  
  1409.   3. Für Wünsche an dem Programm bin ich sehr offen eingestellt.
  1410.  
  1411.  
  1412. Sonstiges
  1413. **********
  1414.  
  1415. Ein Modul war nicht von mir und dieses war `HotKey.mod' vom Thomas Igracki
  1416.  
  1417.  
  1418. * Menu:
  1419.  
  1420. * Adresse:                              Adresse des Autors.
  1421. * Bug reports:                          Adresse des Autors.
  1422. * Compiler Settings Fenster:            CompilerSettings.
  1423. * Copyright:                            Copyright.
  1424. * DebuggerSettings Fenster:             DebuggerSettings.
  1425. * Distribution:                         Copyright.
  1426. * E-Mail:                               Adresse des Autors.
  1427. * EditorSettings Fenster:               EditorSettings.
  1428. * EditorSettings Fenster:               GeneralSettings.
  1429. * Fähigkeiten in Stichpunkten:         Einleitung.
  1430. * Geschichte:                           Geschichte.
  1431. * History:                              Geschichte.
  1432. * InterNet Adresse:                     Adresse des Autors.
  1433. * Kritik:                               Adresse des Autors.
  1434. * MainWindow Fenster:                   MainWindow.
  1435. * MainWindow Menüs:                    MainMenu.
  1436. * MainWindow Project Menü:             MainMenu.
  1437. * MainWindow Settings Menü:            MainMenu.
  1438. * MainWindow Special Menü:             MainMenu.
  1439. * OUtil:                                Fenster.
  1440. * OUtil starten:                        Starten.
  1441. * Postadresse:                          Adresse des Autors.
  1442. * Rechtliche Dinge:                     Copyright.
  1443. * Shell Start:                          Starten.
  1444. * Sonstiges:                            Sonstiges.
  1445. * Spenden:                              Adresse des Autors.
  1446. * Was noch?:                            ToDo.
  1447. * Workbench Start:                      Starten.
  1448.  
  1449.